1. Field of the Invention
The present invention relates to computer system designs, and in particular, relates to low-power computer system designs.
2. Discussion of the Related Art
A computer system's performance can be significantly enhanced by the use of a cache memory. In fact, in many microprocessor-based computer systems today, to increase performance, two or more levels of caching are common. In a typical one of such computer systems, a primary cache memory is provided on-chip in the microprocessor, and a secondary cache memory is provided at the system level to supplement the primary cache memory. To further enhance performance, these cache memories can be implemented as "write-back" caches. Write-back caches, unlike "write-through" caches, do not immediately write a modified memory word into the main memory. Rather, the "dirty" memory words remain in the cache and are written back into the main memory at the occurrence of a pretermined event, such as a timer interrupt programmed to occur periodically.
Thus, in a write-back cache, an issue of cache coherency may arise; that is, at any given time, one or more cached memory words may be different from the corresponding memory word or words in the main memory. Hence, if the cache memory fails for any reason, data cached in the cache memory may be lost. In a portable computer running on battery power, such an event may occur when the battery runs down after a period of use. In the prior art, to avoid lost of data, when a computer system detects a low-battery condition, the user proceeds at the risk of data loss.
In a typical computer system today, the cache memory is responsible for a significant portion of the computer system's power consumption. Typically, relatively more power is consumed by the cache memory during periods of high activities, i.e. reading and writing operations of the cache memory, than when the cache memory is in a stand-by mode. Thus it can be seen that, in a portable computer system, the battery operational life between recharges is traded for the high performance of the cache memory. However, in many applications, where performance is not considered critical, e.g. in many word processing applications, a longer battery life between recharges may be preferable to the higher performance provided by the cache memory.